Engineering parallel symbolic programs in GPH

نویسندگان

  • Hans-Wolfgang Loidl
  • Philip W. Trinder
  • Kevin Hammond
  • Sahalu B. Junaidu
  • Richard G. Morgan
  • Simon L. Peyton Jones
چکیده

We investigate the claim that functional languages ooer low-cost parallelism in the context of symbolic programs on modest parallel architectures. We base our investigation on several large programs that we have written or parallelised in Glasgow Parallel Haskell (GpH). The programs cover a range of application areas, use several parallel programming paradigms, and are measured on two very diierent parallel architectures. The most signiicant result is that we are able to achieve modest wall-clock speedups (between factors of 2 and 10) for all but one of the programs. Speedups are obtained even for programs that were not written with the intention of being parallelised. These gains are achieved with a relatively small programmer-eeort. One reason for the relative ease of parallelisation is the use of evaluation strategies, a new technique that separates the algorithm from the coordination of parallel behaviour. We nd that the determinism of the language is helpful, as is the largely-implicit nature of the parallelism. In such large programs we nd that evaluation strategies allow a high level of abstraction to be maintained. In particular we can describe top-level parallelism, and also preserve module abstraction by describing parallelism over the data structures provided at the module interface.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

GpH and Eden: Comparing two parallel functional languages on a Beowulf cluster

We investigate two similar but contrasting parallel functional language designs: Eden and GPH. Both languages use the non-strict functional language Haskell as a core expression language, both are implemented as extensions of the high performance Glasgow Haskell Compiler (GHC), and both implementations are available on the same distributed architecture: a Beowulf cluster. This allows an excepti...

متن کامل

Engineering Large Parallel Functional Programs

The design and implementation of useful programming languages , whether sequential or parallel, should be driven by large, realistic applications. In constructing several medium-and large-scale programs in Glasgow Parallel Haskell, GpH, a parallel extension of Haskell, the group at Glasgow has investigated several important engineering issues: { Real Application Parallelism. The programs achiev...

متن کامل

Go-faster Haskell Or: Data-intensive Programming in Parallel Haskell Draft

We have recently constructed an integrated programming environment to support programming in Glasgow Parallel Haskell GpH. This paper descibes the construction of several data-intensive parallel programs using the environment. It focuses on a road-traac accident application because it is a real problem with real data, and is the rst non-trivial GpH program to achieve wall-clock speedups | a fac...

متن کامل

Parallel and Symbolic Model Checking for Fixpoint Logic with Chop

We consider the model checking problem for FLC, a modal fixpoint logic capable of defining non-regular properties. This paper presents a refinement of a symbolic model checker and discusses how to parallelise this algorithm. It reports on a prototype implementation of the algorithm in Glasgow Parallel Haskell (GpH) and its performance on a cluster of workstations.

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • Concurrency - Practice and Experience

دوره 11  شماره 

صفحات  -

تاریخ انتشار 1999